import React, { Component,PureComponent } from 'react'
/**
 * 基本类型的操作
 * PureComponent里边的shouldComponentUpdate的算法：浅比较
 * 浅比较的算法
 * 1）如果是基本数据类型，比较的是两个值的 let a=2  let b=1
 * 2) 如果是引用数据类型,比较的是内存的地址 
 * let ary=[a,b,c]
 * let ary1=ary
 */
export default class App extends PureComponent {
  constructor(){
    super()
    this.state={
      count:0
    }
  }
  changeNum=()=>{
    console.log('aa',Math.floor(Math.random()*3));
    this.setState({
      count:Math.floor(Math.random()*3)
    })
  }

  // shouldComponentUpdate(nextProps,nextState){
  //   console.log('nextState',nextState);
  //   console.log('this.state',this.state);
  //   if(nextState.count!=this.state.count){
  //     return true
  //   }else{
  //     return false
  //   }
  // }
  render() {
    console.log('-------render---------');
    return (
      <div>
        <div>{this.state.count}</div>
        <button onClick={this.changeNum}>更新</button>
      </div>
    )
  }
}
